<template>
    <div class="swiper-container" ref="cur">
        <div class="swiper-wrapper">
            <div class="swiper-slide" v-for="(carousel,index) in list" :key="carousel.id">
                <img :src="carousel.imgUrl">
            </div>      
        </div>
        <!-- 如果需要分页器 -->
        <div class="swiper-pagination"></div>
        <!-- 如果需要导航按钮 -->
        <div class="swiper-button-prev"></div>
        <div class="swiper-button-next"></div>
    </div>
</template>

<script>
//引入swiper
import Swiper from 'swiper'
export default {
    name:'Carousel',
    props: ['list'],
    watch:{
        list:{
            //立即监听：不管数据有没有变化，开始就立即监听一次
            immediate:true,
            handler() {
                //只能监听到数据已经有了，但是v-for渲染的结构我们还是没有办法确定的，因此还是需要用nextTick
            this.$nextTick(() =>{
            var mySwiper = new Swiper(this.$refs.cur, {
            loop: true,
            //分页器
            pagination: {
              el: ".swiper-pagination",
              //点击小球切换图片
              clickable: true,
            },
            navigation: {
              nextEl: ".swiper-button-next",
              prevEl: ".swiper-button-prev",
            },
          });
                })
            }
        }
    }
}
</script>

<style>

</style>